package it.clariter.web.action;

import it.clariter.dao.RuoloDAO;
import it.clariter.model.Ruolo;
import it.clariter.web.form.RuoloForm;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.commons.beanutils.BeanUtils;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

public class EseguiRuoloAction extends DispatchAction {


	public ActionForward modificaRuolo(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception{
        
		if(request.getSession().getAttribute("utente")==null){
			response.sendRedirect("login.jsp");
		}
		
		HttpSession session = request.getSession();

		RuoloForm l = (RuoloForm) form;
		Ruolo ruolo = new RuoloDAO().get(l.getIdRuolo());
		BeanUtils.copyProperties(ruolo, l);
		new RuoloDAO().update(ruolo);
		List<Ruolo> lista = new RuoloDAO().getList();
		session.setAttribute("ruoli", lista);
		request.setAttribute("messaggio","Modifica effettuata correttamente");

		return mapping.findForward("update");

	}

	public ActionForward nuovoRuolo(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception{
        
		if(request.getSession().getAttribute("utente")==null){
			response.sendRedirect("login.jsp");
		}
		
		HttpSession session = request.getSession();

		RuoloForm l = (RuoloForm) form;
		Ruolo ruolo=new Ruolo();
		ruolo.setCodiceRuolo(l.getCodiceRuolo());
		ruolo.setDescrizioneRuolo(l.getDescrizioneRuolo());
		
		//settaggio automatico data iscrizione da fare
		
		new RuoloDAO().insert(ruolo);
		List<Ruolo> lista = new RuoloDAO().getList();
		session.setAttribute("ruoli", lista);
		request.setAttribute("messaggio","Ruolo inserito correttamente");

		return mapping.findForward("insert");
	} 

}
